<template>
    <div class="goods-list">
        <div class="goods-item"  v-for="item in goodslist" :key="item.id" @click="goDetail(item.id)">
            <img :src="item.img_url" alt="">
            <h1 class="title">{{item.title}}</h1>
            <div class="info">
                <p class="price">
                    <span class="new">¥{{item.sell_price}}</span>
                    <span class="old">¥{{item.market_price}}</span>
                </p>
                <p class="sell">
                    <span>热卖中</span>
                    <span>剩余{{item.stock_quantity}}件</span>
                </p>
            </div>
        </div>
        <mt-button type="danger" size="large" @click="getMore" v-show="btnhidden">加载更多</mt-button>
    </div>
</template>
<script>
export default {
    name:'GoodsList',
    data(){
        return{
            btnhidden:1,
            pageindex:1,
            goodslist:[],
        }
    },
    created(){
        this.getGoodsList()
    },
    methods:{
        async getGoodsList(){
            const {data} = await this.$http.get('api/getgoods?pageindex='+this.pageindex)
            if(data.status === 0){
                data.message.forEach(ele => {
                    ele.img_url = 'https://consumer.huawei.com/content/dam/huawei-cbg-site/greate-china/cn/v3/Navigation/mate-10-pro.png'
                })
                this.btnhidden = data.message.length
                this.goodslist = this.goodslist.concat(data.message)
            }
        },
        getMore(){
            this.pageindex++
            this.getGoodsList()
        },
        goDetail(id){
            this.$router.push("/home/goodsinfo/" + id)
        }
    }
}
</script>
<style lang="scss" scoped>
.goods-list{
    display: flex;
    flex-wrap: wrap;
    padding: 7px;
    justify-content: space-between;

    .goods-item{
        width: 49%;
        border:solid 1px #ccc;
        box-shadow: 0 0 8px #ccc;
        margin:4px 0;
        padding: 2px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        min-height: 293px;

        img{
            width:100%;
        }
        .title{
            font-size: 14px;
        }
        .info{
            background-color: #ccc;
            
             p{
                padding:5px;
                margin:0;
            }
            .price{
                .new{
                    font-size: 16px;
                    font-weight: bold;
                    color: red;
                }
                .old{
                    text-decoration: line-through;
                    font-size:12px;
                    margin-left: 10px;
                }
            }
            .sell{
                 font-size: 13px;
                 display: flex;
                 justify-content: space-between;
            }
        }
    }
}
</style>

